package com.alipay.anymock.biz.shared.facade;

import java.util.List;
import java.util.Map;

import com.alipay.anymock.biz.shared.model.result.InterfaceWrapper;
import com.alipay.anymock.biz.shared.model.vo.HttpInterfaceAddInfo;
import com.alipay.anymock.biz.shared.model.vo.HttpRuleInfo;
import com.alipay.anymock.biz.shared.model.vo.SocketInterfaceAddInfo;
import com.alipay.anymock.biz.shared.model.vo.SocketRuleVO;

public interface AddInterfaceFacade {

    public int addSocketInterface(SocketInterfaceAddInfo info, List<SocketRuleVO> rules);

    public void openSocket(int interfaceId);

    public void closeSocket(int interfaceId);

    public void deleteSocketInterface(int interfaceId);

    public int addHttpInterface(HttpInterfaceAddInfo info, List<HttpRuleInfo> rules);

    public void deleteHttpInterface(int interfaceId);

    public void sendAsynSocket(String ip, int port, String message);

    public String sendAsynHttp(int itfId, String callbackURL, Map<String, String> parameters);

    public String addSuperGWInterface(InterfaceWrapper inte);

    public void deleteSuperGWInterface(String interfaceId);

    public void subscribleMsg(String interfaceId, String content);

}
